package model

// CaptchaRequest captcha request parameters
type CaptchaRequest struct {
	Type string `json:"type" example:"digit"` // Captcha type: digit-digital, string-string
}

// CaptchaResponse captcha response
type CaptchaResponse struct {
	Response
	Data CaptchaResponseData `json:"data"`
}

// CaptchaResponseData captcha response data
type CaptchaResponseData struct {
	CaptchaId   string `json:"captcha_id"`   // Captcha ID
	CaptchaData string `json:"captcha_data"` // Captcha image data (base64)
}

// VerifyCaptchaRequest verify captcha request
type VerifyCaptchaRequest struct {
	CaptchaId string `json:"captcha_id" binding:"required"` // Captcha ID
	Captcha   string `json:"captcha" binding:"required"`    // Captcha value
}

// VerifyCaptchaResponse verify captcha response
type VerifyCaptchaResponse struct {
	Response
	Data VerifyCaptchaResponseData `json:"data"`
}

// VerifyCaptchaResponseData verify captcha response data
type VerifyCaptchaResponseData struct {
	Valid bool `json:"valid"` // Verification result
}
